/*************************************************************************
	> File Name: Example5_9.java
	> Author: Potter
	> Mail: tobewhatwewant@gmail.com 
	> Created Time: 2014年07月07日 星期一 23时28分48秒
 ************************************************************************/

/* final 关键字
 *  final class 声明一个类不允许有子类
 *  final function 声明子类不允许覆盖(隐藏)父类方法
 *  final varialbe 声明为常量，不可改变，在声明时赋值(初始化): 与 C++ const类似
 * */

class A {
    final double PI = 3.1415926; // PI是常量
    public double getArea(final double r) {
        // r = r + 1; // 非法，不允许对final变量进行更新操作
        return PI * r * r;
    }

    public final void speak() {
        System.out.println("您好，How's everything here ?");
    } 
}

public class Example5_9 {
    public static void main(String args[]) {
        A a = new A();
        System.out.println("面积: " + a.getArea(100));
        a.speak();
    }
}
